<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Geolocation</title>
</head>
<body>
	<div id="map" style="width: 400px;height: 400px;"></div>
	<script src="http://maps.google.com/maps/api/js?sensor=false"></script>
	<script>
	//navigator.geolocation.getCurrentPosition(function(position) {
		//获取地理位置信息成功时所做的处理
	//},
	//function(error) {
		//获取地理位置信息失败时所做的处理
	//},
	//{
		//以下是可选属性
		//maximumAge:60*1000*2   设置缓存有效时间为两分钟
		//timeout：5000   5秒钟未获取到地理信息则返回错误
	//})

		function get_location() {
			if(navigator.geolocation) {
				navigator.geolocation.getCurrentPosition(show_map,handle_error,{
					enableHighAccuracy:true,maximumAge:1000
				});
			} else {
				alert("不支持")
			}
		}
		function show_map(position) {
			//获取不到就是null
			console.log("纬度：" + position.coords.latitude);
			console.log("经度：" + position.coords.longitude);
			console.log("海拔高度：" + position.coords.altitude);
			console.log("前进方向：" + position.coords.heading);
			console.log("前进速度：" + position.coords.speed);
			console.log("获取时间：：" + position.timestamp);
		}
		function handle_error(err) {
			switch(err.code) {
				case 1:
					alert("位置服务被拒绝");
					break;
				case 2:
					alert("暂时获取不到");
					break;
				case 3:
					alert("获取信息超时");
					break;
				default:
					alert("未知错误");
					break;
			}
		}

		function showMyPosition() {
			navigator.geolocation.getCurrentPosition(function(position) {
				var coords = position.coords;
				var latlng = new google.maps.LatLng(coords.latitude,coords.longitude);
				var myOption = {
					zoom:14,
					center:latlng,
					mapTypeId:google.maps.MapTypeId.ROADMAP
				};
				//创建地图在 div.map中显示
				var map = new google.maps.Map(document.getElementById("map"),myOption);
				//在地图上创建标记
				var marker = new google.maps.Marker({
					position:latlng,
					map:map,
					title:"You are here!"
				});
			})
		}

		get_location();
		showMyPosition();
		
	</script>
</body>
</html>